package real.unknown.array;
import java.util.*;
public class canBePalindrome {
    /* 
    
    回文字符串就是正读和反读都一样的字符串，如“viv”、“nexen”、“12321”、“qqq”、“翻身把身翻” 等。
    给定一个非空字符串 str，在最多可以删除一个字符的情况下请编程判定其能否成为回文字符串；
    如果可以则输出首次删除一个字符所能得到的回文字符串，如果不行则输出字符串 "false" 。
    
    */

    
    static class Main{
        public String canBe(String s) {
            int len;
            if (s == null || (len = s.length()) == 0) return "false";
            if (len <= 2) return s.substring(0, 1);
            StringBuilder sb = new StringBuilder(s);
            System.out.println(sb);
            for (int i = 0; i < len; i++) {
                char t = sb.charAt(i);
                sb = sb.deleteCharAt(i);
                String str = sb.toString();
                if (isPalind(str)) return str;
                sb.insert(i, t);
            }
            return "false";
        }
    
        public boolean isPalind(String s) {
            int len = s.length();
            for (int i = 0; i < len / 2; i++) {
                if (s.charAt(i) != s.charAt(len - 1 - i)) return false;
            }
            return true;
        }
        
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            // String s = sc.nextLine();
            Main m = new Main();
            System.out.println(m.canBe("abda"));
             sc.close();
        } 
    }


}
